// 对http请求进行封装
import axios from 'axios'

// 使用自定义的配置文件发送请求
const instance = axios.create({
    baseURL: '',
    timeout: 3000,
    headers: {
        'X-Custom-Header': 'foobar',
        'custome-header':'tianliangjiaoyu'
    }
});

// 添加请求拦截器
instance.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器
instance.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    if(response.status === 200){
        return response.data;
    }else{
        console.error("请求错误")
        console.error(response)
    }
    return response;
  }, function (error) {
    // 对响应错误做点什么
    return Promise.reject(error);
  });
  import http from "./node_modules/@api/http";
  // 这个方法的功能：调用接口获取我们榜单列表
  // 输入： 
  // type：类型
  // size: 返回多少条数据
  // offset：偏移量
  // 输出：
  //     请求到的数据。
  function getMusicBillList(type = 1, size = 6, offset = 0) {
      const url = `/api/v1/restserver/ting?method=baidu.ting.billboard.billList&type=${type}&size=${size}&offset=${offset}`;
      // http.get(url).then(res => {
      //     // 想办法把res的数据返回出去那
      //     return res;
      // });
      // 这个http.get()返回的是一个promise对象，我们我们调用getMusicBillList()就能拿到这个Promise对象
      // 通过Promise对象的then方法就能拿到请求到的数据。
      return http.get(url);
  }
  
  // 这是一个普通导出
  export {
      getMusicBillList
  }
  
  // 默认导出只能导出一个
  export default instance